Electronic semiconductor memories are used in computers and other devices for storing information. The information is encoded into binary bits, which are stored in cells of the memory, with the value of each bit being represented by the electrical state of a cell. An electronic memory may be of the random access type, which readily allows changes to be made in the stored information, or of the read only type, which does not.
A computer is supplied with power from an external source, such as a battery or a connection to a utility power line. The power supplied to the computer generally is also supplied to the memories within the computer. For many applications, it is desirable that the information stored in a memory not be lost when the source of power (i.e. battery or utility power) is disconnected from the memory. For example, if a lengthy program is stored in a computer memory, it may be desirable that the program not be lost when the computer power is shut down, so that the program will be present in the memory when the computer power is turned on again. Memories that maintain their contents after loss of power are termed "non-volatile." Ferrite core memories are exemplary of non-volatile memories.
Memories that lose their contents after loss of power are termed "volatile". Semiconductor random access memories (RAMs) made using simple MOSFETs (metal oxide semiconductor field effect transistors) are exemplary of volatile memories. Generally, volatile memories are capable of high speed, low power operation, whereas non-volatile random access memories (NVRAMs) require more power and operate at lower speeds. Various specialized electronic semiconductor memories, including electrically-alterable read only memories (EAROMs) or electrically erasable programmable read only memories (EEPROMs), have been made to allow in-circuit changes in the data stored in read only memories. However, such devices generally require large amounts of time for reprogramming.